package com.jdyfy.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import jakarta.persistence.Lob;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

import static com.baomidou.mybatisplus.annotation.IdType.AUTO;


@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("departments") //数据库中对应的表名
public class Department implements Serializable {

    //确保反序列化时能正确恢复对象的状态
    private static final long serialVersionUID = 1L;

    @TableId(type =  AUTO)
    private Long departmentNumber; // 科室/企业编号 (主键)

    private String departmentName; // 科室/企业名称

    private String companyRole; // 公司身份 (供应商，代理公司)

    private String companyType; // 公司类型 (经销商，厂家)

    private String industry; // 所属行业

    private String businessScope; // 经营范围

    private String legalRepresentative; // 公司法人

    private String legalIdNumber; // 法人身份证号

    private String contactPerson; // 联系人

    private String contactPhone; // 联系电话

    private String contactEmail; // 联系人邮箱

    private String responsibilityType; // 责任人类型

    private String registeredAddress; // 注册地址

    private String username; // 用户名(逻辑外键)

    private String businessLicense; // 公司营业执照

    private String medicalLicense; // 公司医疗经营许可

    private String medicalLicenseLevel; // 医疗经营许可等级

    private String address; // 地址

    private String description; // 简介

    private String dataSource; // 数据来源

    private Integer status; // 状态 (0为禁用，1为启用)

    private Integer breachCount = 0; // 爽约次数 (默认为 0)

    private String creditCode; // 社会信用代码
}
